package com.dream.servlet;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * @author 匠人码农
 * @date 2020/11/08 12:25
 * 概要：
 *     实现免用户名密登录
 *     后台需要做的就是：
 *         当用户信息验证成功后，把用户信息放到cookie中，然后发送给客户端。
 *     前台页面需要的就是：
 *         在用户名的标签的value值通过El表达式，取得cookie中userName的值
 */

public class LoginServlet extends HttpServlet {
    /**
     *
     * @param req
     * @param resp
     * @throws ServletException
     * @throws IOException
     */
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        //设置请求数据无乱码
        req.setCharacterEncoding("utf-8");

        //设置影响数据无乱码
        resp.setContentType("text/html;charset=utf-8");

        //获取用户名
        String userName = req.getParameter("userName");

        //获取密码
        String password = req.getParameter("password");

        //判断用户，密码的有效性
        if(userName != null && password != null && "admin".equals(userName) && "123456".equals(password)){
            //创建cookie
            Cookie cookie = new Cookie("userName",userName);

            //发送给客户端
            resp.addCookie(cookie);

            resp.getWriter().write("登录成功！");
        }else{
            resp.getWriter().write("登录失败！");
        }

    }
}
